#
# Copyright 2001,2004 The Apache Software Foundation.
# 
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
# 
#      http://www.apache.org/licenses/LICENSE-2.0
# 
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#
#
#
# $Log$
# Revision 1.7  2005/04/05 09:21:57  gareth
# Fix for jira 1397. *Much* nicer make output. Thanks to Axel Weib.
#
# Revision 1.6  2004/09/08 13:56:59  peiyongz
# Apache License Version 2.0
#
# Revision 1.5  2004/07/09 16:32:27  peiyongz
# Build on HP-Itanium, aCC A.05.52
#
# Revision 1.4  2004/04/13 16:41:17  peiyongz
# IdentityConstraintHandler
#
# Revision 1.3  2002/09/17 21:24:47  peiyongz
# RPM for Xerces2.1.0, patch from Thomas Woerner (thomas@linux.de)
#
# Revision 1.2  2002/07/26 16:49:30  tng
# [Bug 2681] Can't build with gcc/g++ not named 'gcc'/'g++'.  Patch from Jonathan Lennox.
#
# Revision 1.1.1.1  2002/02/01 22:22:51  peiyongz
# sane_include
#
# Revision 1.1  2001/11/02 14:08:40  knoaman
# Add support for identity constraints.
#
#

PLATFORM = @platform@
CC  = @cc@
CXX = @cxx@
CXXVER = @cxxver@
GCC = @GCC@
GXX = @GXX@
CXXFLAGS = @cxxflags@
CFLAGS = @cflags@
PREFIX = @prefix@
PREFIX_INCLUDE = @prefix_include@
LDFLAGS = @ldflags@
LIBS = @libs@
OSVER = @osver@
USELIBWWW = @uselibwww@
MESSAGELOADER = @messageloader@
TRANSCODER = @transcoder@
THREADS = @threads@

include ../../../Makefile.incl

MODULE = validators
SUBMODULE = schema/identity
XML_INCL := $(XML_INCL) -I$(XERCESCROOT)/src

VALIDATORS_SCHEMA_CPP_PUBHEADERS = \
	FieldActivator.hpp \
	FieldValueMap.hpp \
	IC_Field.hpp \
	IC_Key.hpp \
	IC_KeyRef.hpp \
	IC_Selector.hpp \
	IC_Unique.hpp \
	IdentityConstraint.hpp \
	IdentityConstraintHandler.hpp \
	ValueStore.hpp \
	ValueStoreCache.hpp \
	XercesXPath.hpp \
	XPathException.hpp \
	XPathMatcher.hpp \
	XPathMatcherStack.hpp \
	XPathSymbols.hpp

VALIDATORS_SCHEMA_CPP_PRIVHEADERS =

VALIDATORS_SCHEMA_C_FILES =

VALIDATORS_SCHEMA_CPP_OBJECTS = \
	FieldActivator.$(TO) \
	FieldValueMap.$(TO) \
	IC_Field.$(TO) \
	IC_Key.$(TO) \
	IC_KeyRef.$(TO) \
	IC_Selector.$(TO) \
	IC_Unique.$(TO) \
	IdentityConstraint.$(TO) \
	IdentityConstraintHandler.$(TO) \
	ValueStore.$(TO) \
	ValueStoreCache.$(TO) \
	XercesXPath.$(TO) \
	XPathMatcher.$(TO) \
	XPathMatcherStack.$(TO) \
	XPathSymbols.$(TO)

all::	includes $(VALIDATORS_SCHEMA_CPP_OBJECTS)

includes::	pubheaders $(VALIDATORS_SCHEMA_C_FILES)

pubheaders::
	$Qmkdir -p $(XML_INC_DIR)/$(MODULE)/$(SUBMODULE)
	@echo "  (CP)  $(XML_INC_DIR)/$(MODULE)/$(SUBMODULE)"
	$Q$(CP) $(VALIDATORS_SCHEMA_CPP_PUBHEADERS) $(VALIDATORS_SCHEMA_C_FILES) $(XML_INC_DIR)/$(MODULE)/$(SUBMODULE)

# this may generate unnecessary dependencies, but it makes life easier
depend:: includes
	@echo "  (DEP)"
	$Q$(MAKE_DEPEND) $(XML_INCL)  *.cpp > $(DEPFILE)

clean::
	@echo "Making clean in $(MODULE)/$(SUBMODULE) ..."
	$(RM2) $(addprefix $(XML_OBJ_DIR)/,$(VALIDATORS_SCHEMA_CPP_OBJECTS))

distclean::	clean
	$(RM) Makefile $(DEPFILE)
	@echo "Removing all $(MODULE)/$(SUBMODULE) header files ..."
	$(RM2) $(addprefix $(XML_INC_DIR)/$(MODULE)/$(SUBMODULE)/,$(VALIDATORS_SCHEMA_CPP_PUBHEADERS))

install::
	-mkdir -p $(DESTDIR)$(PREFIX_INCLUDE)/$(MODULE)/$(SUBMODULE)
	$(CP) $(VALIDATORS_SCHEMA_CPP_PUBHEADERS) $(VALIDATORS_SCHEMA_C_FILES) $(DESTDIR)$(PREFIX_INCLUDE)/$(MODULE)/$(SUBMODULE)
